#include "ti_msp_dl_config.h"
#include "delay.h"  

uint8_t Key_Scan()
{
    int key=0;
    if( DL_GPIO_readPins(KEY_PORT, KEY_PIN_1_PIN) == 0 )
    {
        delay_ms(20);
        while (DL_GPIO_readPins(KEY_PORT, KEY_PIN_1_PIN) == 0);
       delay_ms(20);    
        key = 1;
    }
    if( DL_GPIO_readPins(KEY2_PORT, KEY2_KEY_2_PIN) == 0 )
    {
       delay_ms(20);        
        while (DL_GPIO_readPins(KEY2_PORT, KEY2_KEY_2_PIN) == 0);
        delay_ms(20);       
        key = 2;
    }
    if( DL_GPIO_readPins(KEY3_PORT, KEY3_KEY_3_PIN) == 0 )
    {
             delay_ms(20);  
        while (DL_GPIO_readPins(KEY3_PORT, KEY3_KEY_3_PIN) == 0);
       delay_ms(20);
        key = 3;
    }

    return key;
}

/*示例：使用按键控制LED
int main(void)
{
    // 系统初始化
    SYSCFG_DL_init();
    
    // 配置按键引脚（假设为KEY_PORT和KEY_PIN_21_PIN）
    DL_GPIO_setDirection(KEY_PORT, KEY_PIN_21_PIN, DL_GPIO_INPUT);
    DL_GPIO_setPull(KEY_PORT, KEY_PIN_21_PIN, DL_GPIO_PULL_UP);
    
    // 配置LED引脚（假设为GPIO_GRP_LED_PORT和GPIO_GRP_LED_PIN_22_PIN）
    DL_GPIO_setDirection(GPIO_GRP_LED_PORT, GPIO_GRP_LED_PIN_22_PIN, DL_GPIO_OUTPUT);
    
    while (1)
    {
        // 检测按键事件
        if (Key_Scan(KEY_PORT, KEY_PIN_21_PIN)) {
            // 按键按下，翻转LED状态
            DL_GPIO_togglePins(GPIO_GRP_LED_PORT, GPIO_GRP_LED_PIN_22_PIN);
        }
        
        // 可添加其他代码...
        delay_ms(10);  // 短暂延时，降低CPU占用
    }
}
*/